$(function () {
    //需求1：定义校验规则
    let form = layui.form
    //form对象中有一个方法verrify专门定义校验
    //参数是对象类型，属性的规则名称，值是规则（数组或函数）
    form.verify({
        nickname: [
            /^[\S]{1,10}$/,
            '昵称的长度为1-10个字符！'
        ]
    })

    //需求2：渲染用户信息-封装函数
    let layer = layui.layer
    initUserInfo()
    function initUserInfo() {
        axios({
            method:'GET',
            url:'/my/userinfo'
        }).then(res=>{
            // console.log(res);
            //判断
            if(res.data.status !== 0){
                return layer.msg(res.data.message)
            }
            // 为form表单赋值 内置模块-->表单->表单赋值
            form.val('formUserInfo',res.data.data)
        })
    }

    //需求3：重置功能
    $('form').on('reset',function (e) {
        e.preventDefault()
        //重新渲染表单
        initUserInfo()
    })

    //需求4：修改用户信息
    $('form').on('submit',function (e) {
        e.preventDefault()
        axios({
            method:'POST',
            url:'/my/userinfo',
            data:$(this).serialize()
        }).then(res=>{
            console.log(res);
            if(res.data.status!==0){
                return layer.msg(res.data.message)
            }
            layer.msg('修改用户信息成功！')
            //不能直接调用 不是一个window对象
            window.parent.getUserInfo()
        })
    })
})